package com.atguigu.gmall.mq.config;

import org.springframework.amqp.core.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.HashMap;

/**
 * @author atguigu-mqx
 */
@Configuration
public class DeadLetterMqConfig {

    //  定义一些变量：
//    public static final String exchange_dead = "exchange.dead";
//    public static final String routing_dead_1 = "routing.dead.1";
//    public static final String routing_dead_2 = "routing.dead.2";
//    public static final String queue_dead_1 = "queue.dead.1";
//    public static final String queue_dead_2 = "queue.dead.2";
//
//    //  定义交换机
//    @Bean
//    public DirectExchange exchange(){
//        return new DirectExchange(exchange_dead,true,false);
//    }
//    //  定义队列
//    @Bean
//    public Queue queue(){
//        HashMap<String, Object> map = new HashMap<>();
//        map.put("x-dead-letter-exchange",exchange_dead);
//        map.put("x-dead-letter-routing-key",routing_dead_2);
//        //  10秒钟
////        map.put("x-message-ttl",10*1000);
//        map.put("x-message-ttl",24*3600*1000);
//        return new Queue(queue_dead_1,true,false,false,map);
//    }
//
//    //  定义绑定    交换机---路由键1----队列1
//    @Bean
//    public Binding binding(){
//        return BindingBuilder.bind(queue()).to(exchange()).with(routing_dead_1);
//    }
//
//    //  定义队列2
//    @Bean
//    public Queue queue2(){
//        return new Queue(queue_dead_2,true,false,false);
//    }
//
//    //  定义绑定    交换机---路由键2----队列2
//    @Bean
//    public Binding binding2(){
//        return BindingBuilder.bind(queue2()).to(exchange()).with(routing_dead_2);
//    }

}
